其他
从4万行代码降到1.8万,腾讯视频竟然用DDD做架构重构?
👉导读
DDD 的指导思想很多时候较为晦涩,与实际业务中的架构设计场景往往较难结合理解。本文通过引入架构映射等方式将二者结合,试图给出一套量化评估方法并通过腾讯视频一起看系统的实践案例说明如何应用。👉目录
1 领域驱动2 软件架构3 架构映射4 视频一起看5 效果评估6 几点说明
01
1.1 DDD 简介
1.2 领域建模
1.3 领域建模-例1
1.4 领域建模-例2
02
2.1 定义架构
2.2 架构特征
2.3 架构特征
2.4 架构风格及度量
|
03
3.1 DDD 过程模型
|
3.2 架构映射
|
04
4.1 DDD 与重构
4.2 一起看的技术债
4.3 发起重构
4.4 架构重构
|
4.5 逻辑重构
05
5.1 问题与目标
5.2 效果的定性说明
5.3 效果的量化分析
在架构层面,重构前后的改进
在模块层面,重构前后的改进
在代码层面,重构前后在四个维度(代码规范、千行问题、圈复杂度、千行超标复杂度)上的改进:
代码量方面,重构前代码量约 4w 行,重构后 1.8w 行,降幅55%
性能方面,重构后 Top4 接口耗时都有明显优化,平均耗时降低45%左右
成本方面,通过下图趋势线可以看出,Top4 成本均呈下降趋势,其中 PCG-123 和日志服务 CLS 成本降幅明显,达到40%左右
5.4 设计关键点
系统架构
核心数据结构
技术与业务指标
06